﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Collections;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x020004C5 RID: 1221
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class EvolveBuildLevelInfo : IMessage<EvolveBuildLevelInfo>, IMessage, IEquatable<EvolveBuildLevelInfo>, IDeepCloneable<EvolveBuildLevelInfo>, IBufferMessage
	{
		// Token: 0x17000FCF RID: 4047
		// (get) Token: 0x06003731 RID: 14129 RVA: 0x00098310 File Offset: 0x00096510
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<EvolveBuildLevelInfo> Parser
		{
			get
			{
				return EvolveBuildLevelInfo._parser;
			}
		}

		// Token: 0x17000FD0 RID: 4048
		// (get) Token: 0x06003732 RID: 14130 RVA: 0x00098317 File Offset: 0x00096517
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return EvolveBuildLevelInfoReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000FD1 RID: 4049
		// (get) Token: 0x06003733 RID: 14131 RVA: 0x00098329 File Offset: 0x00096529
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return EvolveBuildLevelInfo.Descriptor;
			}
		}

		// Token: 0x06003734 RID: 14132 RVA: 0x00098330 File Offset: 0x00096530
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EvolveBuildLevelInfo()
		{
		}

		// Token: 0x06003735 RID: 14133 RVA: 0x0009835C File Offset: 0x0009655C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EvolveBuildLevelInfo(EvolveBuildLevelInfo other) : this()
		{
			this.periodIdList_ = other.periodIdList_.Clone();
			this.curGameExp_ = other.curGameExp_;
			this.avatarList_ = other.avatarList_.Clone();
			this.roundCnt_ = other.roundCnt_;
			this.battleInfo_ = ((other.battleInfo_ != null) ? other.battleInfo_.Clone() : null);
			this.battleTargetList_ = other.battleTargetList_.Clone();
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06003736 RID: 14134 RVA: 0x000983E7 File Offset: 0x000965E7
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EvolveBuildLevelInfo Clone()
		{
			return new EvolveBuildLevelInfo(this);
		}

		// Token: 0x17000FD2 RID: 4050
		// (get) Token: 0x06003737 RID: 14135 RVA: 0x000983EF File Offset: 0x000965EF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<uint> PeriodIdList
		{
			get
			{
				return this.periodIdList_;
			}
		}

		// Token: 0x17000FD3 RID: 4051
		// (get) Token: 0x06003738 RID: 14136 RVA: 0x000983F7 File Offset: 0x000965F7
		// (set) Token: 0x06003739 RID: 14137 RVA: 0x000983FF File Offset: 0x000965FF
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint CurGameExp
		{
			get
			{
				return this.curGameExp_;
			}
			set
			{
				this.curGameExp_ = value;
			}
		}

		// Token: 0x17000FD4 RID: 4052
		// (get) Token: 0x0600373A RID: 14138 RVA: 0x00098408 File Offset: 0x00096608
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<EvolveBuildAvatar> AvatarList
		{
			get
			{
				return this.avatarList_;
			}
		}

		// Token: 0x17000FD5 RID: 4053
		// (get) Token: 0x0600373B RID: 14139 RVA: 0x00098410 File Offset: 0x00096610
		// (set) Token: 0x0600373C RID: 14140 RVA: 0x00098418 File Offset: 0x00096618
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint RoundCnt
		{
			get
			{
				return this.roundCnt_;
			}
			set
			{
				this.roundCnt_ = value;
			}
		}

		// Token: 0x17000FD6 RID: 4054
		// (get) Token: 0x0600373D RID: 14141 RVA: 0x00098421 File Offset: 0x00096621
		// (set) Token: 0x0600373E RID: 14142 RVA: 0x00098429 File Offset: 0x00096629
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EvolveBuildBattleInfo BattleInfo
		{
			get
			{
				return this.battleInfo_;
			}
			set
			{
				this.battleInfo_ = value;
			}
		}

		// Token: 0x17000FD7 RID: 4055
		// (get) Token: 0x0600373F RID: 14143 RVA: 0x00098432 File Offset: 0x00096632
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public RepeatedField<BattleTarget> BattleTargetList
		{
			get
			{
				return this.battleTargetList_;
			}
		}

		// Token: 0x06003740 RID: 14144 RVA: 0x0009843A File Offset: 0x0009663A
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as EvolveBuildLevelInfo);
		}

		// Token: 0x06003741 RID: 14145 RVA: 0x00098448 File Offset: 0x00096648
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(EvolveBuildLevelInfo other)
		{
			return other != null && (other == this || (this.periodIdList_.Equals(other.periodIdList_) && this.CurGameExp == other.CurGameExp && this.avatarList_.Equals(other.avatarList_) && this.RoundCnt == other.RoundCnt && object.Equals(this.BattleInfo, other.BattleInfo) && this.battleTargetList_.Equals(other.battleTargetList_) && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06003742 RID: 14146 RVA: 0x000984E8 File Offset: 0x000966E8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			num ^= this.periodIdList_.GetHashCode();
			if (this.CurGameExp != 0U)
			{
				num ^= this.CurGameExp.GetHashCode();
			}
			num ^= this.avatarList_.GetHashCode();
			if (this.RoundCnt != 0U)
			{
				num ^= this.RoundCnt.GetHashCode();
			}
			if (this.battleInfo_ != null)
			{
				num ^= this.BattleInfo.GetHashCode();
			}
			num ^= this.battleTargetList_.GetHashCode();
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06003743 RID: 14147 RVA: 0x00098580 File Offset: 0x00096780
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06003744 RID: 14148 RVA: 0x00098588 File Offset: 0x00096788
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06003745 RID: 14149 RVA: 0x00098594 File Offset: 0x00096794
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.CurGameExp != 0U)
			{
				output.WriteRawTag(8);
				output.WriteUInt32(this.CurGameExp);
			}
			this.avatarList_.WriteTo(ref output, EvolveBuildLevelInfo._repeated_avatarList_codec);
			if (this.battleInfo_ != null)
			{
				output.WriteRawTag(34);
				output.WriteMessage(this.BattleInfo);
			}
			this.battleTargetList_.WriteTo(ref output, EvolveBuildLevelInfo._repeated_battleTargetList_codec);
			this.periodIdList_.WriteTo(ref output, EvolveBuildLevelInfo._repeated_periodIdList_codec);
			if (this.RoundCnt != 0U)
			{
				output.WriteRawTag(72);
				output.WriteUInt32(this.RoundCnt);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06003746 RID: 14150 RVA: 0x0009863C File Offset: 0x0009683C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			num += this.periodIdList_.CalculateSize(EvolveBuildLevelInfo._repeated_periodIdList_codec);
			if (this.CurGameExp != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.CurGameExp);
			}
			num += this.avatarList_.CalculateSize(EvolveBuildLevelInfo._repeated_avatarList_codec);
			if (this.RoundCnt != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.RoundCnt);
			}
			if (this.battleInfo_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.BattleInfo);
			}
			num += this.battleTargetList_.CalculateSize(EvolveBuildLevelInfo._repeated_battleTargetList_codec);
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06003747 RID: 14151 RVA: 0x000986E4 File Offset: 0x000968E4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(EvolveBuildLevelInfo other)
		{
			if (other == null)
			{
				return;
			}
			this.periodIdList_.Add(other.periodIdList_);
			if (other.CurGameExp != 0U)
			{
				this.CurGameExp = other.CurGameExp;
			}
			this.avatarList_.Add(other.avatarList_);
			if (other.RoundCnt != 0U)
			{
				this.RoundCnt = other.RoundCnt;
			}
			if (other.battleInfo_ != null)
			{
				if (this.battleInfo_ == null)
				{
					this.BattleInfo = new EvolveBuildBattleInfo();
				}
				this.BattleInfo.MergeFrom(other.BattleInfo);
			}
			this.battleTargetList_.Add(other.battleTargetList_);
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06003748 RID: 14152 RVA: 0x00098793 File Offset: 0x00096993
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06003749 RID: 14153 RVA: 0x0009879C File Offset: 0x0009699C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num > 34U)
				{
					if (num <= 64U)
					{
						if (num == 50U)
						{
							this.battleTargetList_.AddEntriesFrom(ref input, EvolveBuildLevelInfo._repeated_battleTargetList_codec);
							continue;
						}
						if (num != 64U)
						{
							goto IL_35;
						}
					}
					else if (num != 66U)
					{
						if (num != 72U)
						{
							goto IL_35;
						}
						this.RoundCnt = input.ReadUInt32();
						continue;
					}
					this.periodIdList_.AddEntriesFrom(ref input, EvolveBuildLevelInfo._repeated_periodIdList_codec);
					continue;
				}
				if (num == 8U)
				{
					this.CurGameExp = input.ReadUInt32();
					continue;
				}
				if (num == 26U)
				{
					this.avatarList_.AddEntriesFrom(ref input, EvolveBuildLevelInfo._repeated_avatarList_codec);
					continue;
				}
				if (num == 34U)
				{
					if (this.battleInfo_ == null)
					{
						this.BattleInfo = new EvolveBuildBattleInfo();
					}
					input.ReadMessage(this.BattleInfo);
					continue;
				}
				IL_35:
				this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
			}
		}

		// Token: 0x040015BE RID: 5566
		private static readonly MessageParser<EvolveBuildLevelInfo> _parser = new MessageParser<EvolveBuildLevelInfo>(() => new EvolveBuildLevelInfo());

		// Token: 0x040015BF RID: 5567
		private UnknownFieldSet _unknownFields;

		// Token: 0x040015C0 RID: 5568
		public const int PeriodIdListFieldNumber = 8;

		// Token: 0x040015C1 RID: 5569
		private static readonly FieldCodec<uint> _repeated_periodIdList_codec = FieldCodec.ForUInt32(66U);

		// Token: 0x040015C2 RID: 5570
		private readonly RepeatedField<uint> periodIdList_ = new RepeatedField<uint>();

		// Token: 0x040015C3 RID: 5571
		public const int CurGameExpFieldNumber = 1;

		// Token: 0x040015C4 RID: 5572
		private uint curGameExp_;

		// Token: 0x040015C5 RID: 5573
		public const int AvatarListFieldNumber = 3;

		// Token: 0x040015C6 RID: 5574
		private static readonly FieldCodec<EvolveBuildAvatar> _repeated_avatarList_codec = FieldCodec.ForMessage<EvolveBuildAvatar>(26U, EvolveBuildAvatar.Parser);

		// Token: 0x040015C7 RID: 5575
		private readonly RepeatedField<EvolveBuildAvatar> avatarList_ = new RepeatedField<EvolveBuildAvatar>();

		// Token: 0x040015C8 RID: 5576
		public const int RoundCntFieldNumber = 9;

		// Token: 0x040015C9 RID: 5577
		private uint roundCnt_;

		// Token: 0x040015CA RID: 5578
		public const int BattleInfoFieldNumber = 4;

		// Token: 0x040015CB RID: 5579
		private EvolveBuildBattleInfo battleInfo_;

		// Token: 0x040015CC RID: 5580
		public const int BattleTargetListFieldNumber = 6;

		// Token: 0x040015CD RID: 5581
		private static readonly FieldCodec<BattleTarget> _repeated_battleTargetList_codec = FieldCodec.ForMessage<BattleTarget>(50U, BattleTarget.Parser);

		// Token: 0x040015CE RID: 5582
		private readonly RepeatedField<BattleTarget> battleTargetList_ = new RepeatedField<BattleTarget>();
	}
}
